package cn.com.zcode.core.dao;

import java.util.List;

import org.apache.log4j.Logger;
import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.Example;
import org.mybatis.spring.SqlSessionTemplate;
 

import cn.com.zcode.core.model.BaseModelSupport;


public class BaseMybatisDaoSupport implements BaseDao {
	private Logger logger = Logger.getLogger(BaseMybatisDaoSupport.class);
	private SqlSessionTemplate sessionTemplate = null;
	
	
	public <M extends BaseModelSupport> M save(M t) {
		return t;
	}

	
	public <M extends BaseModelSupport> void edit(M t) {
		
		
	}

	
	public void delete(String id, Class<? extends BaseModelSupport> zlass) {
		
		
	}

	
	public <M extends BaseModelSupport> M get(String id, Class<M> zlass) {
		
		return null;
	}

	
	public <O> O getByHQL(String hql, Class<O> mlass, Object... pram) {
		
		return null;
	}

	
	public <M extends BaseModelSupport> void delete(M persistentInstance) {
		
		
	}

	
	public <M extends BaseModelSupport> List<M> findByHQL(String hql,
			Class<M> zlass) {
		
		return null;
	}

	
	public <M extends BaseModelSupport> List<M> findByExample(M instance) {
		
		return null;
	}

	
	public <M extends BaseModelSupport> List<M> findByProperty(
			String propertyName, Object value, Class<M> zlass) {
		
		return null;
	}

	
	public <M extends BaseModelSupport> List<M> findAll(Class<M> zlass) {
		
		return null;
	}

	
	public <M extends BaseModelSupport> List<M> findAll(String[] orders,
			String[] wherecond, Class<M> zlass) {
		
		return null;
	}

	
	public <M extends BaseModelSupport> M merge(M detachedInstance) {
		
		return null;
	}

	
	public <M extends BaseModelSupport> void saveOrUpdate(M instance) {
		
		
	}

	public SqlSessionTemplate getSessionTemplate() {
		return sessionTemplate;
	}

	public void setSessionTemplate(SqlSessionTemplate sessionTemplate) {
		this.sessionTemplate = sessionTemplate;
	}


	@Override
	public <M extends BaseModelSupport> M saveWithId(M instance) {
		// TODO Auto-generated method stub
		return null;
	}

}
